package com.gaobug.platform.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.gaobug.database.page.PageWrapped;
import com.gaobug.platform.domain.CommentInfo;
import com.baomidou.mybatisplus.extension.service.IService;
import com.gaobug.platform.dto.CommentDTO;
import com.gaobug.platform.dto.VoteDTO;
import com.gaobug.platform.vo.CommentVO;

/**
 * @author huang
 * @description 针对表【t_comment_info(评论表)】的数据库操作Service
 * @createDate 2022-12-14 16:40:10
 */
public interface CommentInfoService extends IService<CommentInfo> {
    /**
     * 评论
     *
     * @param commentDTO 评论内容
     */
    void commentBlog(CommentDTO commentDTO);
    /**
     * 评论查询
     *
     * @param page 分页参数
     * @return 分页列表
     */
    IPage<CommentVO> commentPage(String articleId,Page<CommentInfo> page);

    /**
     * 评论展开查询
     *
     * @param id   顶级评论标识
     * @param page 分页参数
     * @return 分页列表
     */
    IPage<CommentVO> commentExpandPage(String id, Page<CommentInfo> page);

    /**
     * 评论删除
     *
     * @param id
     */
    void commentDel(Long id);

    /**
     * 评论点赞
     *
     * @param voteDTO 点赞内容
     */
    void commentLike(VoteDTO voteDTO);
}
